package sd.zhr.moodcapsule.service;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import sd.zhr.moodcapsule.mapper.MoodCapsuleMapper;
import sd.zhr.moodcapsule.pojo.MoodCapsule;

import java.util.List;

@Service
public class MoodCapsuleServiceImpl {
    @Autowired
    MoodCapsuleMapper moodCapsuleMapper;
    public List<MoodCapsule> getAllMoodCapsules(MoodCapsule moodCapsule) {
        return moodCapsuleMapper.getAllMoodCapsule(moodCapsule);
    }
    /**
     * 根据主键删除一条记录。
     *
     * @param id 要删除的记录的主键ID
     * @return 返回受影响的行数（1 表示删除成功，0 表示未找到记录）
     */
    public int deleteByPrimaryKey(Integer id) {
        return moodCapsuleMapper.deleteByPrimaryKey(id);
    }

    /**
     * 插入一条完整的记录。
     *
     * @param record 要插入的记录对象
     * @return 返回受影响的行数（1 表示插入成功）
     */
    public int insert(MoodCapsule record) {
        return moodCapsuleMapper.insert(record);
    }

    /**
     * 插入一条记录，但只插入非空字段。
     *
     * @param record 要插入的记录对象
     * @return 返回受影响的行数（1 表示插入成功）
     */
    public int insertSelective(MoodCapsule record) {
        return moodCapsuleMapper.insertSelective(record);
    }

    /**
     * 根据主键查询一条记录。
     *
     * @param id 要查询的记录的主键ID
     * @return 返回查询到的记录对象，如果没有找到则返回 null
     */
    public MoodCapsule selectByPrimaryKey(Integer id) {
        return moodCapsuleMapper.selectByPrimaryKey(id);
    }

    /**
     * 根据主键更新一条记录，只更新非空字段。
     *
     * @param record 要更新的记录对象
     * @return 返回受影响的行数（1 表示更新成功，0 表示未找到记录）
     */
    public int updateByPrimaryKeySelective(MoodCapsule record) {
        return moodCapsuleMapper.updateByPrimaryKeySelective(record);
    }

    /**
     * 根据主键更新一条记录，包括 BLOB 字段（如文本、二进制数据等）。
     *
     * @param record 要更新的记录对象
     * @return 返回受影响的行数（1 表示更新成功，0 表示未找到记录）
     */
    public int updateByPrimaryKeyWithBLOBs(MoodCapsule record) {
        return moodCapsuleMapper.updateByPrimaryKeyWithBLOBs(record);
    }

    /**
     * 根据主键更新一条记录，更新所有字段。
     *
     * @param record 要更新的记录对象
     * @return 返回受影响的行数（1 表示更新成功，0 表示未找到记录）
     */
    public int updateByPrimaryKey(MoodCapsule record) {
        return moodCapsuleMapper.updateByPrimaryKey(record);
    }
}
